<template>
  <div>
    <vxe-toolbar ref="xToolbar1" custom export refresh></vxe-toolbar>
    <vxe-table
      border
      ref="xTable1"
      :export-config="{}"
      :align="allAlign"
      :data="tableData"
      highlight-hover-row
      :show-footer="showFooter"
      :footer-method="footerMethod">
      <vxe-table-column type="seq" width="60" title="序号" v-if="isShowIndex"></vxe-table-column>
      <vxe-table-column
        v-for="(item,key) in tableColumn"
        show-overflow="tooltip"
        :field="item.field"
        :title="item.title"
        :key="key">
      </vxe-table-column>
    </vxe-table>
  </div>
</template>
<script>
export default {
  name: 'VexTable',
  props: {
    allAlign: {
      type: String,
      default: 'left'
    },
    isShowIndex: {
      type: Boolean,
      default: true
    },
    showFooter: {
      type: Boolean,
      default: false
    },
    tableColumn: {
      type: Array,
      default: () => []
    },
    tableData: {
      type: Array,
      default: () => []
    },
    footerMethod: {
      type: Function,
      default: () => []
    }
  },
  data () {
    return {}
  },
  created () {
    this.$nextTick(() => {
      // 手动将表格和工具栏进行关联
      this.$refs.xTable1.connect(this.$refs.xToolbar1)
    })
  },
  methods: {
    //   footerMethod ({ columns, data }) {
    //     const means = []
    //     const sums = []
    //     const others = []
    //     columns.forEach((column, columnIndex) => {
    //       if (columnIndex === 0) {
    //         means.push('平均')
    //         sums.push('和值')
    //         others.push('其他')
    //       } else {
    //         let sumCell = null
    //         switch (column.property) {
    //           case 'age':
    //             console.log('column', column)
    //             console.log('data', data)
    //             for (const item of data) {
    //               sumCell += item.age
    //               console.log('sumCell', item.age)
    //             }
    //             break
    //           case 'amount':
    //             // meanCell = this.meanNum(data, column.property)
    //
    //             break
    //           case 'sex':
    //             // otherCell = '无'
    //             break
    //         }
    //         // means.push(meanCell)
    //         sums.push(sumCell)
    //         // others.push(otherCell)
    //       }
    //     })
    //     // 返回一个二维数组的表尾合计
    //     return [sums]
    //   }
    // }
  }
}
</script>
